package com.ruoyi.report_gc.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 钢材重量偏差试验检测记录业务对象 report_gc_gczlpcjlb_bs_info
 *
 * @author llb
 * @date 2024-06-21
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class GczlpcjlbBsInfoBo extends ExcelGeneralBo {

    /**
     * 一份excel表格的唯一id(其他的excel主表，都应有此字段）
     */
    @NotNull(message = "一份excel表格的唯一id(其他的excel主表，都应有此字段）不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 共几页
     */
    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 第几页
     */
    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 检测单位名称
     */
    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 记录编号
     */
    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 工程名称
     */
    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 工程部位/用途
     */
    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品名称
     */
    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 样品时间
     */
    @NotBlank(message = "样品时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsj;

    /**
     * 试验检测日期
     */
    @NotBlank(message = "试验检测日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiyjcrq;

    /**
     * 试验条件温度
     */
    @NotBlank(message = "试验条件温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjwd;

    /**
     * 试验条件湿度
     */
    @NotBlank(message = "试验条件湿度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjsd;

    /**
     * 检测依据
     */
    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 取样地点
     */
    @NotBlank(message = "取样地点不能为空", groups = { AddGroup.class, EditGroup.class })
    private String quydd;

    /**
     * 代表数量
     */
    @NotBlank(message = "代表数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daibsl;

    /**
     * 规格牌号
     */
    @NotBlank(message = "规格牌号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String guigxh;

    /**
     * 批号
     */
    @NotBlank(message = "批号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pih;

    /**
     * 生产厂家
     */
    @NotBlank(message = "生产厂家不能为空", groups = { AddGroup.class, EditGroup.class })
    private String cd;

    /**
     * 公称直径1(mm)
     */
    @NotNull(message = "公称直径1(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongczj1;

    /**
     * 公称截面积1(mm²)
     */
    @NotNull(message = "公称截面积1(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongcjmj1;

    /**
     * 样品长度11(mm)
     */
    @NotNull(message = "样品长度11(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd11;

    /**
     * 样品长度12(mm)
     */
    @NotNull(message = "样品长度12(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd12;

    /**
     * 样品长度13(mm)
     */
    @NotNull(message = "样品长度13(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd13;

    /**
     * 样品长度14(mm)
     */
    @NotNull(message = "样品长度14(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd14;

    /**
     * 样品长度15(mm)
     */
    @NotNull(message = "样品长度15(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd15;

    /**
     * 样品长度总长度1(mm)
     */
    @NotNull(message = "样品长度总长度1(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcdzcd1;

    /**
     * 样品重量1(g)
     */
    @NotNull(message = "样品重量1(g)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpzl1;

    /**
     * 理论重量1(kg/m)
     */
    @NotNull(message = "理论重量1(kg/m)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal lilzl1;

    /**
     * 重量偏差1(%)
     */
    @NotNull(message = "重量偏差1(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal zhonglpc1;

    /**
     * 公称直径2(mm)
     */
    @NotNull(message = "公称直径2(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongczj2;

    /**
     * 公称截面积2(mm²)
     */
    @NotNull(message = "公称截面积2(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongcjmj2;

    /**
     * 样品长度21(mm)
     */
    @NotNull(message = "样品长度21(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd21;

    /**
     * 样品长度22(mm)
     */
    @NotNull(message = "样品长度22(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd22;

    /**
     * 样品长度23(mm)
     */
    @NotNull(message = "样品长度23(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd23;

    /**
     * 样品长度24(mm)
     */
    @NotNull(message = "样品长度24(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd24;

    /**
     * 样品长度25(mm)
     */
    @NotNull(message = "样品长度25(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd25;

    /**
     * 样品长度总长度2(mm)
     */
    @NotNull(message = "样品长度总长度2(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcdzcd2;

    /**
     * 样品重量2(g)
     */
    @NotNull(message = "样品重量2(g)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpzl2;

    /**
     * 理论重量2(kg/m)
     */
    @NotNull(message = "理论重量2(kg/m)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal lilzl2;

    /**
     * 重量偏差2(%)
     */
    @NotNull(message = "重量偏差2(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal zhonglpc2;

    /**
     * 公称直径3(mm)
     */
    @NotNull(message = "公称直径3(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongczj3;

    /**
     * 公称截面积3(mm²)
     */
    @NotNull(message = "公称截面积3(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gongcjmj3;

    /**
     * 样品长度31(mm)
     */
    @NotNull(message = "样品长度31(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd31;

    /**
     * 样品长度32(mm)
     */
    @NotNull(message = "样品长度32(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd32;

    /**
     * 样品长度33(mm)
     */
    @NotNull(message = "样品长度33(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd33;

    /**
     * 样品长度34(mm)
     */
    @NotNull(message = "样品长度34(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd34;

    /**
     * 样品长度35(mm)
     */
    @NotNull(message = "样品长度35(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcd35;

    /**
     * 样品长度总长度3(mm)
     */
    @NotNull(message = "样品长度总长度3(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpcdzcd3;

    /**
     * 样品重量3(g)
     */
    @NotNull(message = "样品重量3(g)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yangpzl3;

    /**
     * 理论重量3(kg/m)
     */
    @NotNull(message = "理论重量3(kg/m)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal lilzl3;

    /**
     * 重量偏差3(%)
     */
    @NotNull(message = "重量偏差3(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal zhonglpc3;

    /**
     * 附加声明
     */
    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 检测
     */
    @NotBlank(message = "检测不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jianc;

    /**
     * 记录
     */
    @NotBlank(message = "记录不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jil;

    /**
     * 复核
     */
    @NotBlank(message = "复核不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fuh;

    /**
     * 日期
     */
    @NotBlank(message = "日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String riq;

    /**
     * 设备ids
     */
    @NotBlank(message = "设备ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     * 判断依据ids
     */
    @NotBlank(message = "判断依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyjIds;

    /**
     * 检测依据ids
     */
    @NotBlank(message = "检测依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyjIds;


}
